import CommonBaseSchema from '#common/base_schema'

export default class extends CommonBaseSchema {
  protected tableName = 'shops'

  async up() {
    this.schema.createTable(this.tableName, (table) => {
      table.increments()
      table.integer('parent_id').defaultTo(0).comment('父级ID')
      table.string('logo', 255).defaultTo('').comment('店铺Logo')
      table.string('name', 50).comment('店铺名称')
      table.string('address', 255).nullable().comment('店铺地址')
      table.string('mobile_phone', 15).nullable().comment('移动电话')
      table.string('phone', 11).nullable().comment('电话号码')
      table.time('open_time').defaultTo('00:00').comment('营业开始时间')
      table.time('close_time').defaultTo('23:59').comment('营业结束时间')
      table.tinyint('level').unsigned().comment('门店级别 1 总部 2区域 3门店')
      table.json('region').nullable().comment('地区')
      table.json('location').nullable().comment('地点')
      table.string('notice', 200).defaultTo('').comment('门店公告')
      table.integer('min_show').defaultTo(1).unsigned().comment('最小展示数')
      table.tinyint('status').defaultTo(1).unsigned().comment('状态')
      table.string('memo', 255).defaultTo('').comment('备注')

      this.defineCommonColumns(table)
      table.comment('门店表')
    })
  }

  async down() {
    this.schema.dropTable(this.tableName)
  }
}
